package com.getan.boot.common.exception;

import lombok.NoArgsConstructor;

/**
 * 架构全局异常基类
 * 所有架构内的异常，都应该继承这个异常类
 * <p>
 * {@link ResponseCodeException} 是一个带有错误码的异常类，架构内其它自定义异常类，都基于 {@link ResponseCodeException} 类。
 * 在 Web 端为其设置了统一JSON格式输出 {@code ResponseCodeData}，错误码可以输出至 {@code code} 属性。
 * <p>
 * {@link FrameworkException} 框架异常基类，框架内针对不同的异常会使用不同的异常类，但都基于该类。
 * {@link BizException} 业务异常基类，业务开发中的异常使用该类，也可以继承该类，实现自定义异常。
 *
 * @author Bruce.Gong
 * @see ResponseCodeException
 * @see FrameworkException
 * @see BizException
 * @since 1.0.0-SNAPSHOT
 */
@SuppressWarnings("unused")
@NoArgsConstructor
public class ApplicationException extends RuntimeException {

    public ApplicationException(String message) {
        super(message);
    }

    public ApplicationException(String message, Throwable cause) {
        super(message, cause);
    }

    public ApplicationException(Throwable cause) {
        super(cause);
    }

}
